﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BussinesCosea;
using System.Configuration;
using System.IO;
using System.Data.SqlClient;

public partial class EdicionPrecandidatos : System.Web.UI.Page
{
    private static AppSettingsReader settings = new AppSettingsReader();
    string cadena = (string)settings.GetValue("Conexion2", typeof(string));
    private static int folio = 0;
    //private static BussinesCosea.SolicitudEmpleo solicitud = new BussinesCosea.SolicitudEmpleo();
    //private static BussinesCosea.OrdenServicio ordenSrv = new BussinesCosea.OrdenServicio();
    private static BussinesCosea.Empleado emp = new BussinesCosea.Empleado();
    private static int IidOrden = 0;

    protected void Page_Load(object sender, EventArgs e)
    {

        folio = int.Parse(this.Request.QueryString["id"]);
        HiddenField1.Value = this.Request.QueryString["id"];        

        using (BussinesCosea.CoseaDirectos c = new BussinesCosea.CoseaDirectos(cadena))
        {
            emp = c.BuscaEmpleado(folio);
        }

        Consulta();
        CargaCombos();
        habilitacajas();
        cargaImagenes();
    }

    private void Consulta()
    {
        Nombre.Text = emp.SolicitudEmpleo.Nombre1;
        Paterno.Text = emp.SolicitudEmpleo.Paterno;
        Materno.Text = emp.SolicitudEmpleo.Materno;
        Imss.Text = emp.SolicitudEmpleo.Imss;
        Rfc.Text = emp.SolicitudEmpleo.RFC;
        FechaNacimiento.Text = emp.SolicitudEmpleo.FechaNacimiento.ToString();
        Edad.Text = emp.SolicitudEmpleo.Edad;
        LugarNacimiento.Text = emp.SolicitudEmpleo.LugarNacimiento;
        Estado.SelectedItem.Text = emp.SolicitudEmpleo.EstadoDondeVive;
        Sexo.Text = emp.SolicitudEmpleo.Sexo;
        EstadoCivil.Text = emp.SolicitudEmpleo.EstadoCivil;
        Padre.Text = emp.SolicitudEmpleo.Padre;
        Madre.Text = emp.SolicitudEmpleo.Madre;
        Escolaridad.Text = emp.SolicitudEmpleo.EscolaridadMaxima;
        Direccion.Text = emp.SolicitudEmpleo.Domicilio;
        Tel1.Text = emp.SolicitudEmpleo.Telefono;
        Tel2.Text = emp.SolicitudEmpleo.Telefono2;
        Celular.Text = emp.SolicitudEmpleo.Celular;
        Recados.Text = emp.SolicitudEmpleo.TelefonoRecados;
        Cliente.Text = emp.OrdenServicio.Cliente.RazonSocial;
        LugarTrabajo.Text = emp.OrdenServicio.LugardeTrabajo;
        Colonia.Text = emp.OrdenServicio.ColoniaLugarTrabajo;
        CP.Text = emp.OrdenServicio.Cliente.Cp;
        Telefono1.Text = emp.OrdenServicio.Cliente.Telefono1;
        Puesto.Text = emp.IdPuesto.ToString();
        periodoPago.Text = emp.OrdenServicio.PeriodoSalario;
        Contrato.Text = emp.OrdenServicio.TipoContrato.IdTipoContrato.ToString();
        SalarioDiario.Text = emp.SalarioDiario.ToString();
        fechaIngreso.Text = emp.FechaIngreso.Value.ToString("yyyy-MM-dd");
        DiaDescanso.Text = emp.DiaDescanso;
        Turno.Text = emp.Turno;
        TipoSangre.Text = emp.TipoSangre;
        Naccidente.Text = emp.NombeAvisoAccidente;
        Taccidente.Text = emp.TelefonoAvisoAccidente;
        Mfecha.Text = emp.Medico_Fecha.Value.ToString("yyyy-MM-dd");
        A.Text = emp.Medico_A;
        NA.Text = emp.Medico_NA;
        Antidoping.Text = emp.Medico_AntiDop;
        AVOD.Text = emp.Medico_Avod;
        AVOI.Text = emp.Medico_Avoi;
        Observaciones.Text = emp.Medico_Observa;
        Examinado.Text = emp.Medico_Examinado;
        Mplanta.Text = emp.Medico_Planta;
        Documentacion_0.Checked = emp.Fotos.Value;
        Documentacion_1.Checked = emp.Domicilio.Value;
        Documentacion_2.Checked = emp.Estudios.Value;
        Documentacion_3.Checked = emp.Ife.Value;
        Documentacion_4.Checked = emp.Imss.Value;
        Documentacion_5.Checked = emp.Acta.Value;
        Documentacion_6.Checked = emp.Recomendacion.Value;
        Documentacion_7.Checked = emp.Policia.Value;
        Documentacion_8.Checked = emp.Curp.Value;
        Infonavit.Text = emp.CreditoInfonavit;
        NCredito.Text = emp.NumeroCreditoInfonavit;
        Contratado.Checked = emp.Contratado.Value;
        Comentarios.Text = emp.Comentarios;
    }

    private void CargaCombos()
    {
        try
        {
            using (BussinesCosea.CoseaDirectos c = new BussinesCosea.CoseaDirectos(cadena))
            {

                Puesto.DataSource = c.ObtenPuestos();
                Puesto.DataTextField = "Puesto1";
                Puesto.DataValueField = "IdPuesto";
                Puesto.DataBind();

                Contrato.DataSource = c.ObtenTipoContrato();
                Contrato.DataTextField = "Descripcion";
                Contrato.DataValueField = "IdTipoContrato";
                Contrato.DataBind();
            }
        }
        catch (Exception ex)
        {
            Response.Redirect("Error.aspx?error=" + ex.Message);
            //throw;
        }
    }

    private void guardaImagenSolicitud(int idfolio, FileUpload imgUpload, string campo)
    {
        SqlConnection connection = null;
        try
        {
            //(FileUpload)
            FileUpload img = imgUpload;
            Byte[] imgByte = null;
            if (img.HasFile && img.PostedFile != null)
            {
                //To create a PostedFile
                HttpPostedFile File = imgUpload.PostedFile;
                //Create byte Array with file len
                imgByte = new Byte[File.ContentLength];
                //force the control to load data in array
                File.InputStream.Read(imgByte, 0, File.ContentLength);
            }

            connection = new SqlConnection(cadena);

            connection.Open();
            string sql = string.Format("update ExpedienteEmpleado set {0} = @foto where IdExpediante = @idexpediente", campo);
            SqlCommand cmd = new SqlCommand(sql, connection);
            cmd.Parameters.AddWithValue("@idexpediente", idfolio);
            cmd.Parameters.AddWithValue("@foto", imgByte);
            int id = Convert.ToInt32(cmd.ExecuteScalar());

        }
        catch (Exception ex)
        {
            Response.Redirect("Error.aspx?error=" + ex.Message);
            //throw new Exception(ex.Message);
        }
        finally
        {
            connection.Close();
        }
    }

    private void habilitacajas()
    {

    }

    private void cargaImagenes()
    {
        if(Documentacion_0.Checked == true )
            Image1.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Fotos";
        if (Documentacion_1.Checked == true)
            Image2.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Domicilio";
        if (Documentacion_2.Checked == true)
            Image3.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Estudios";
        if (Documentacion_3.Checked == true)
            Image4.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Ife";
        if (Documentacion_4.Checked == true)
            Image5.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Imss";
        if (Documentacion_5.Checked == true)
            Image6.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Acta";
        if (Documentacion_6.Checked == true)
            Image7.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Recomendacion";
        if (Documentacion_7.Checked == true)
            Image8.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Policia";
        if (Documentacion_8.Checked == true)
            Image9.ImageUrl = "~/MuestraImagenEmpleados.ashx?id=" + emp.IdEmpleado.ToString() + "&campo=Curp";

    }
    protected void btnVer1_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Fotos");
    }
    protected void btnVer2_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Domicilio");
    }
    protected void btnVer3_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Estudios");
    }
    protected void btnVer4_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Ife");
    }
    protected void btnVer5_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Imss");
    }
    protected void btnVer6_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Acta");
    }
    protected void btnVer7_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Recomendacion");
    }
    protected void btnVer8_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Policia");
    }
    protected void btnVer9_Click(object sender, EventArgs e)
    {
        Response.Redirect("MuestraImagen.aspx?id=" + emp.IdEmpleado.ToString() + "&campo=Curp");
    }
}